package com.gxa.modules.model.entity.book;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

/**
 * <p>
 * 医生日程安排表
 * </p>
 *
 * @author zhuiyi
 * @since 2022-11-13 12:10:47
 */
@Getter
@Setter
@Accessors(chain = true)
@TableName("t_schedule")
@ApiModel(value = "Schedule对象", description = "医生日程安排表")
public class Schedule implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("编号")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty("医院编号")
    @TableField("hospital_id")
    private Long hospitalId;

    @ApiModelProperty("科室编号")
    @TableField("deparment_id")
    private Long deparmentId;

    @ApiModelProperty("职称")
    @TableField("title")
    private String title;

    @ApiModelProperty("医生名称")
    @TableField("doctor_name")
    private String doctorName;

    @ApiModelProperty("擅长技能")
    @TableField("skill")
    private String skill;

    @ApiModelProperty("安排日期")
    @TableField("work_date")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private Date workDate;

    @ApiModelProperty("安排时间（0：上午 1：下午）")
    @TableField("work_time")
    private Integer workTime;

    @ApiModelProperty("可预约数")
    @TableField("reserved_number")
    private Integer reservedNumber;

    @ApiModelProperty("剩余预约数")
    @TableField("available_number")
    private Integer availableNumber;

    @ApiModelProperty("挂号费")
    @TableField("amount")
    private BigDecimal amount;

    @ApiModelProperty("排班状态（-1：停诊 0：停约 1：可约）")
    @TableField("status")
    private Integer status;

    @ApiModelProperty("创建时间")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private Date createTime;

    @ApiModelProperty("更新时间")
    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;

    @ApiModelProperty("逻辑删除(1:已删除，0:未删除)")
    @TableField("is_deleted")
    @TableLogic
    private Integer isDeleted;

    @ApiModelProperty("9:00")
    @TableField("am_9")
    private Integer am9;

    @ApiModelProperty("9:30")
    @TableField("am_9_h")
    private Integer am9H;

    @ApiModelProperty("10:00")
    @TableField("am_10")
    private Integer am10;

    @ApiModelProperty("10:30")
    @TableField("am_10_h")
    private Integer am10H;

    @ApiModelProperty("11:00")
    @TableField("am_11")
    private Integer am11;

    @ApiModelProperty("11:30")
    @TableField("am_11_h")
    private Integer am11H;

    @ApiModelProperty("14:00")
    @TableField("pm_14")
    private Integer pm14;

    @ApiModelProperty("14:30")
    @TableField("pm_14_h")
    private Integer pm14H;

    @ApiModelProperty("15:00")
    @TableField("pm_15")
    private Integer pm15;

    @ApiModelProperty("15:30")
    @TableField("pm_15_h")
    private Integer pm15H;

    @ApiModelProperty("16:00")
    @TableField("pm_16")
    private Integer pm16;

    @ApiModelProperty("16:30")
    @TableField("pm_16_h")
    private Integer pm16H;

    @ApiModelProperty("医生id")
    @TableField("doctor_id")
    private Long doctorId;


}
